1. Field of the Invention
The present invention relates to an asynchronous communication technique, and in particular to an asynchronous communication technique which enables condense processing to be performed while an application is running.
2. Description of the Related Art
Efficient data communication is possible with asynchronous communication because processing is complete once the data is sent, regardless of the state of the destination application. Consequently, in core business systems that perform asynchronous communication, logical queues which store data such as service requests are provided for each application.
As these queues, ISAM (Indexed Sequential Access Method) files are used, which can store data in the order in which it was received, and also fetch data in the order in which it was stored, by using indices which indicate the storage address of each piece of data. Moreover, by using the ISAM files cyclically using pointers which indicate the start and end of free areas, the storage and fetch of data to and from a buffer is rendered unnecessary, and data can be accessed at high speed. That is to say, when storing data using a pointer indicating the start of a free area, and fetching data from the end of the free area, high speed access is realized by updating the pointer.
However, if an error occurs with the application, and data is not fetched from the ISAM file, there is a danger that the pointer indicating the end of the free area may not be updated. If the pointer indicating the end of the free area is not updated, a so called “fragmented” state results, which means that the free area cannot be used despite being available, and this decreases the free area. Consequently, “condense processing” is appropriately performed in which the data in the ISAM file is temporarily saved and then restored to a contiguous area, thereby increasing the free area.
However, if data is stored during the condense processing, the saved data is restored after the stored data, making it impossible to guarantee the storage order of the data. Consequently, as shown in Patent Document 1, it is necessary to use a flag to determine whether or not storage is possible, and thus prevent the storage of data during the condense processing. Because the prevention of data storage involves a suspension of service by the application, the result is a reduction of service.
Therefore, in consideration of the above heretofore problems, it is an object of the present invention to provide an asynchronous communication technique capable of condense processing ISAM files even when applications are running, by devising a method of restoring the saved data.
Patent Document 1 corresponds to:
Japanese Kokai (Unexamined Patent Publication) No. 63-257849